﻿<Page x:Class="WpfPathExample.PagePolyBezier"
      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
      xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
      xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
      mc:Ignorable="d" 
       d:DesignHeight="480" d:DesignWidth="800"
	Title="PagePolyBezier">
    <Grid  >
        <Grid Margin="50" Background="WhiteSmoke" >

            <TextBlock VerticalAlignment="Center" Margin="10"   TextWrapping="Wrap"  Text="使用 PathFigure 对象存储 PolyBezierSegment 对象和其他线段。

一条三次方贝塞尔曲线由四个点来定义：一个起点、一个终点和两个控制点。PolyBezierSegment 通过将 Points 属性设置为点集合来指定一条或多条三次方贝塞尔曲线。对于集合中的每三个点，第一个点和第二个点指定曲线的两个控制点，第三个点指定终点。请注意，未指定曲线的起点，因为曲线的起点与最后一条线段的终点是同一个点。如果您要指定所有三个点（一条贝塞尔曲线），可以使用 BezierSegment，将这三个点的值指定为 Point1、Point2 和 Point3。

三次方贝塞尔曲线的两个控制点的作用像磁铁一样，朝着自身的方向吸引本应为直线的部分，从而形成一条曲线。第一个控制点影响曲线的开始部分；第二个控制点影响曲线的结束部分。注意，曲线不一定必须通过两个控制点之一；每个控制点将直线的一部分朝着自己的方向移动，但不通过自身。

PolyBezierSegment 实质上可以有无限个控制点，这些点和终点的值作为 Points 属性值提供。

"/>
            <Path Stroke="Red" StrokeThickness="3" >
                <Path.Data>
                    <PathGeometry >
                        <PathFigure StartPoint="10,20">
                            <PolyBezierSegment Points="0,0 200,0 300,100 300,0 400,0 600,100" />
                        </PathFigure>
                    </PathGeometry>
                </Path.Data>
            </Path>

            <Path Stroke="Green" StrokeThickness="3" >
                <Path.Data>
                    <PathGeometry >
                        <PathFigure StartPoint="10,20"   >
                            <PolyLineSegment  Points="0,0 200,0 300,100 300,0 400,0 600,100"/>
 
                        </PathFigure>
                    </PathGeometry>
                </Path.Data>
            </Path>

           
        </Grid>
    </Grid>
</Page>
